package com.wicket.okrapp.integration.dto;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc QueryQuestionListComReqDto
 * @使用场景
 */
@Data
public class QueryQuestionListComReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 高/中/基层操作场景 TOP:高层 MID:中层 BASIC:基层 UCD:UCD框架
   */
  @ApiModelProperty("高/中/基层操作场景")
  private String batchOperateScene;

  /**
   * 问题提出类型筛选条件
   */
  @ApiModelProperty("问题提出类型筛选条件")
  private String questionProposeTypeScreen;

  /**
   * 问题视角筛选条件
   */
  @ApiModelProperty("问题视角筛选条件")
  private String questionAngleScreen;

  /**
   * 问题状态筛选条件
   */
  @NotNull(message = "问题状态筛选条件不能为空")
  @ApiModelProperty("问题状态筛选条件")
  private String questionStatusScreen;

  /**
   * 部门ID
   */
  @ApiModelProperty("中基层部门ID")
  private String deptId;

  /**
   * 创建人就职记录ID
   */
  @ApiModelProperty("创建人就职记录ID")
  private String createInductionId;

  /**
   * 虚拟组织成员就职记录ID
   */
  @ApiModelProperty("虚拟组织成员就职记录ID")
  private String virtualOrgInductionRecordId;

  /**
   * 身份人员ID
   */
  @ApiModelProperty("身份人员ID")
  private String originalRoleMemberId;

  /**
   * 是否直接干系人 TRUE:是 FALSE:否
   */
  @ApiModelProperty("是否直接干系人")
  private String isDirectStakeholders;

  /**
   * 问题编号
   */
  @ApiModelProperty("问题编号")
  private String questionNumber;

  /**
   * 问题文字简介
   */
  @ApiModelProperty("问题文字简介")
  private String questionIntroduce;

  /**
   * 问题等级 FATAL:致命 SERIOUS:严重 GENERAL:一般 TINY:微小
   */
  @ApiModelProperty("问题等级")
  private String questionLevel;

  /**
   * 是否私密 TRUE:是 FALSE:否
   */
  @ApiModelProperty("是否私密")
  private String isPrivate;

  /**
   * 冗余来源类型编码
   */
  @ApiModelProperty("冗余来源类型编码")
  private String sourceTypeCode;

  /**
   * 安排主体ID
   */
  @ApiModelProperty("安排主体ID")
  private String arrangeSubjectId;

  /**
   * 接收部门ID
   */
  @ApiModelProperty("接收部门ID")
  private String receiveSubjectId;

  /**
   * 归属对象ID
   */
  @ApiModelProperty("归属对象ID")
  private String coordObjectId;

  /**
   * 业务应用标识
   */
  @ApiModelProperty("业务应用标识")
  private String bizAppCode;

  /**
   * 创建时间
   */
  @ApiModelProperty("创建时间")
  private Date createTime;

}
